You are here: Building the Model: Advanced Elements > Modeling Tips > Batching & Unbatching Entities > Temporary Batching Using GROUP/UNGROUP
The GROUP statement allows you to group entities together and ungroup them at a later time. You may group entities by individual entity type by defining a process record for the type to group, or group them irrespective of entity type by defining an ALL process record. To combine multiple entity types in which you must control the quantity of each type requires controlling the routing which sends parts to the grouping location. ProModel maintains all of the identities and attributes of the grouped entities and allows them to remain with the individual entities after an UNGROUP command.
To illustrate how GROUP/UNGROUP works, suppose we want to consolidate 20 incoming entities into a group called Batch. If the current location performs no additional operation steps once you group the entities, you can simply use the statement "GROUP 20" to group the 20 entities and then specify an output of 1 Batch in the routing. If, on the other hand, the current location performs additional operation steps after the grouping occurs, use the statement "Group 20 as Batch" and define no output routing for the grouped entities. Instead, the entities become a new entity called "Batch" that needs a process record defined afterwards for the same location where you batched them.
Once you accomplish the purpose for which you grouped the entities, such as moving them, you can unbatch the entities using the UNGROUP statement as shown next. Note that after the ungrouping takes place, you must define processes for each potential entity that could have been in the group (alternatively you could define an ALL process record).